#include "iostream"
using namespace std;


class BB
{
public:
	int getC()
	{
		return c;
	}
	void setC(int nyc)
	{
		c = nyc;	
	}
	 //静态成员函数是属于整个类，
	//在类的静态数据成员函数中，是不能调用具体的对象的变量的属性。。。。（抛砖）
	//不能调用普通成员变量
	static void getMem()
	{
		//cout<<a<<endl;
		cout<<c<<endl;
	}
protected:
private:
	int a;
	int b;
	static int c;
};
int BB::c = 0;//!!!!!!!!!!!!!!!!!!!!!!!
// C++规定，const的静态成员可以直接在类内初始化，而非const的静态成员需要在类外声明以初始化。对于后一种情况，我们一般选择在类的实现文件中初始化。

   

 //static修饰的变量，是属于类，，所有的对象都能共享用。
int main()
{
	BB b1;
	BB b2;

	b1.setC(100);

	cout<<b1.getC()<<endl;;
	cout<<b2.getC()<<endl;;

	cout << "=======================" << endl;
	//调用静态成员函数的方法1
	BB::getMem();

	cout << "=======================" << endl;
	//调用静态成员函数的方法2
	b1.getMem();
	b2.getMem();

	return 0;
}
